home *** CD-ROM | disk | FTP | other *** search
- Hinweise zur Benutzung des GEM-Klemmbrett-Accessories
- =====================================================
-
- 1. Einleitung
-
- Das Klemmbrett-Accessory (CLIPBRD.ACC) ist ein Programm, welches sich
- als Applikation und als Accessory gleichzeitig einsetzen läßt. Es ist
- Public Domain und darf nur als Ganzes weitergegeben werden. Hierzu
- gehören die Dateien CLIPBRD.ACC, CLIPBRD.RSC und CLIPBRD.DOC. Das
- Accessory ist ein Extrakt eines Demoprogramms aus dem Buch
-
- "Vom Anfänger zum GEM-Profi" (Inside GEM),
-
- welches beim Hüthig Buch Verlag Heidelberg im Februar '90 erschienen ist.
- Auf der zum Buch beigefügten Diskette befinden sich die kompletten
- Quelltexte und eine ausführliche Beschreibung der Interna des
- Programms sowie aller bekannten GEM-Implementierungen und weitere
- interessante Themen wie menschliche Informationsverarbeitung, Theorie
- und Praxis von Benutzeroberflächen und portable C-Programmierung.
-
- CLIPBRD.ACC stellt eine Verwaltung des GEM-Klemmbretts (Clipboards)
- dar. Das GEM-Klemmbrett ist ein Inhaltsverzeichnis auf einer Diskette,
- Festplatte oder RAM-Disk. In diesem Inhaltsverzeichnis befinden sich
- Dateien, auf die jede Applikation zugreifen kann, die das Klemmbrett
- unterstützt. Die Dateien in diesem Klemmbrett haben jeweils ein
- spezifisches Standardformat. Damit ist der Datenaustausch zwischen
- Applikationen gewährleistet.
-
- Das Inhaltsverzeichnis des GEM-Klemmbretts sollte sich der
- Geschwindigkeit wegen auf einem schnellen Medium befinden, welches
- außerdem beim Diskettentausch immer on-line ist. Aus diesem Grund ist
- es ratsam, dieses auf der Festplatte oder einer RAM-Disk anzulegen,
- d.h. ab Laufwerk C aufwärts. Ein Inhaltsverzeichnis könnte also
- lauten:
-
- C:\CLIPBRD\
-
- Die Standardformate sind bereits von Digital Research vorgegeben,
- wobei nicht alle Formate auf dem Atari benutzt werden müssen.
- Zusätzlich zu den Standardformaten können Applikationen ihre eigenen
- Formate auf dem Klemmbrett speichern. Diese müssen aber nicht
- notwendigerweise von anderen Applikationen "verstanden" werden.
-
- Alle Dateien im Klemmbrett, auch Scrap genannt, haben den gleichen
- Namen, aber jeweils einen verschiedenen Suffix. Folgende Typen bzw.
- Dateibezeichnungen werden vorgeschlagen:
-
- SCRAP.CSV: Die Abkürzung bedeutet Comma-Separated-Values. Es handelt
- sich um eine Liste von Zahlen oder Zeichenketten, die jeweils durch
- Kommata getrennt sind.
-
- SCRAP.TXT: Normaler ASCII-Text ohne spezielle Zeichen. Alle
- druckbaren Zeichen des Zeichensatzes auf dem jeweiligen Rechner
- können vorkommen. Von den Steuerzeichen sollten sinnvollerweise nur
- CR/LF eventuell auch FF vorkommen.
-
- SCRAP.GEM: GEM Metadateien sollten von allen objektorientierten
- Zeichenprogrammen unterstützt werden. Aber auch Texteditoren sollten
- sie einlesen und wenigstens darstellen können (Beispiel: Wordplus
- unter GEM/3 und X/GEM).
-
- SCRAP.IMG: GEM Bit-Image-Dateien sollten von allen pixelorientierten
- Zeichenprogrammen unterstützt werden. Aber auch Texteditoren sollten
- diese einlesen und wenigstens darstellen können. (Beispiel:
- Wordplus).
-
- SCRAP.DCA: Die "Document Contents Architecture" ist ein
- Standardformat von IBM. Leider befindet sich in der
- Originaldokumentation keine genaue Beschreibung dieses Formats.
-
- SCRAP.USR: OEM-definiert.
-
- Zusätzlich sollte noch mindestens ein weiteres Format unterstützt
- werden:
-
- SCRAP.DIF: Das DIF-Format dient zum Austausch von Daten zwischen
- Programmen für Tabellenkalkulation, Präsentationsgrafik und
- Datenbanken. Ihr Aufbau wird in verschiedenen Literaturstellen
- aufgezeigt.
-
- Alle Dateien mit dem Präfix SCRAP werden standardmäßig für den
- Datenaustausch benutzt. Es können aber noch weitere Dateien mit
- anderem Präfix im Klemmbrett-Verzeichnis vorkommen (z.B. SPOOL.TXT).
-
-
- 2. Datenaustausch
-
- Damit Applikationen Daten austauschen können, müssen diese über
- bestimmte Menüpunkte verfügen. Über Aktivierung dieser Menüs werden
- dann entweder Dateien aus dem Klemmbrett in das aktuelle Dokument
- (aktuelle Grafik) eingefügt oder Teile aus dem aktuellen Dokument
- ausgeschnitten und im Klemmbrett abgelegt.
-
- Die Menüpunkte sind bereits von vielen Programmen bekannt, sie lauten
- Ausschneiden, Kopieren und Einfügen (Cut, Copy und Paste). Sie haben
- folgende Bedeutung:
-
- Ausschneiden (Cut): Der vorher ausgewählte Block wird ausgeschnitten
- und aus dem Original-Dokument entfernt. Vorher werden alle Dokumente
- SCRAP.* aus dem Klemmbrett gelöscht (sogenanntes "scrp_clear") und der
- ausgeschnittene Block auf das Klemmbrett geschrieben. Der Name lautet
- dort SCRAP.* (der * steht für das entsprechende Suffix). Es können
- dann mehrere Dateien mit Präfix SCRAP. vorkommen, falls ein Programm
- ein spezielles Format benutzt. Beim Wordplus wird beispielsweise
- sowohl eine Datei SCRAP.TXT (Standard ASCII-Format) als auch eine
- Datei SCRAP.1WP (Wordplus Format mit Attributen) erzeugt.
-
- Kopieren (Copy): Wie "Ausschneiden", aber ohne Löschen des Originals.
-
- Einfügen (Paste): Aus dem Klemmbrett wird das entsprechende Stück
- gelesen und an die aktuelle Cursorposition eingefügt. Der Inhalt des
- Klemmbretts bleibt unberührt.
-
- Zusätzlich haben sich die folgenden Menüpunkte bewährt:
-
- Löschen (Delete): Wie "Ausschneiden" jedoch ohne Zwischenspeichern auf
- dem Klemmbrett.
-
- Alles auswählen (Select all): Markieren des gesamten Dokumentes zum
- nachfolgenden Bearbeiten.
-
- Die Routinen der meisten Programme, die einen Cut/Copy/Paste-
- Algorithmus anbieten, arbeiten jedoch im Speicher, so daß der
- eigentliche Datenaustausch unterdrückt wird. Dadurch steigert sich
- allerdings die Geschwindigkeit, da nicht über ein externes Medium
- gegangen werden muß.
-
- Um beide Möglichkeiten zu realisieren, müssten die Menüs doppelt
- vorhanden sein, also einmal für den schnellen Hauptspeicher und
- einmal für das externe Klemmbrett.
-
- Um Menüs zu sparen, sind z.B. im CLIPBRD.ACC die jeweiligen Menüpunkte
- für das Bearbeiten nur einmal vorhanden. Ein Schalter (Auf GEM-
- Klemmbrett) regelt dann die Ausführung der Operationen dermaßen, daß
- sie entweder im Speicher oder auf dem Klemmbrett arbeiten.
-
-
- 3. Bedienung von CLIPBRD.ACC
-
- Um CLIPBRD.ACC zu installieren, müssen lediglich die Dateien
- CLIPBRD.ACC und CLIPBRD.RSC auf die Boot-Diskette oder die Festplatte
- kopiert werden. Wem der Speicher zu wertvoll ist (CLIPBRD belegt etwa
- 75 KB), kann CLIPBRD.ACC auch in CLIPBRD.PRG umbenennen. Der Ablauf
- des Programms und die Bedienung ist bis auf die Bedienung der
- Menüzeile die gleiche, wie es sich für ein sauber programmiertes
- Applikations-Accessory gehört. Die in einem Accessory fehlende
- Menüzeile wird in dessen Fenster dargestellt. Das Programm läuft
- außerdem in jeder Auflösung und auf Großbildschirmen und mit jeder
- GEM-Version.
-
- Beim Starten des Accessories über das Menü "GEM-Klemmbrett" des
- Deskaccessory-Menüs bzw. durch Doppelklick auf CLIPBRD.PRG öffnet sich
- ein Fenster, welches den aktuellen Inhalt des Klemmbretts anzeigt. Die
- Anzeige entspricht in etwa dem des GEM-Desktop, wobei für die Dateien,
- welche im Standardformat vorliegen, ausgewählte Piktogramme benutzt
- werden.
-
- Beim Betrieb als Accessory enthält das Fenster eine scrollbare
- Menüzeile, die dadurch angewählt wird, daß in diese geklickt wird.
- Wird dabei der Mausknopf gedrückt gehalten, so entspricht die
- Bedienung der einer Macintosh-Menüleiste, d.h. durch Loslassen des
- Knopfes wird ein Menü ausgewählt. Wurde nur kurz in die Menüleiste
- geklickt, so fällt das Menü herunter, wobei die Bedienung der einer
- GEM-Menüleiste entspricht. Durch nochmaliges Klicken wird ein
- Menüpunkt ausgewählt.
-
- Die Menüpunkte im einzelnen:
-
- CLIPBRD:
-
- - Über Clipbrd...
-
- Bringt eine entsprechende Meldung.
-
-
- Datei:
-
- - Öffnen
-
- Ist eine oder sind mehrere Dateien im Fenster angewählt, so werden
- diese geöffnet, d.h. ihr Inhalt in echten Fenstern angezeigt. Dabei
- werden Metadateien und Bit-Image-Dateien entsprechend ihrem Suffix
- angezeigt. Alle anderen Dateien werden als Textdateien angezeigt.
-
- Das Selektieren von Objekten geschieht in der im Desktop üblichen
- Weise, also durch Anklicken. Sollen mehrere Objekte angewählt werden,
- so kann dies durch zusätzliches Drücken der Shift-Taste erreicht
- werden. Auch das Einrahmen mittels eines Gummibandes ist möglich.
- Selektierte Objekte bleiben angewählt, auch wenn die Anzeigeart von
- Icons auf Text umgeschaltet wird.
-
- Ist kein Objekt (Datei) selektiert, so wird zunächst das Klemmbrett-
- Fenster geöffnet bzw. nach oben gebracht. Ist dieses bereits oben, so
- öffnet sich die Dateiauswahl-Box, in der eine Datei angewählt werden
- kann, die dann angezeigt wird.
-
-
- - Schließen
-
- Schließt das oberste Fenster.
-
- - Info...
-
- Zeigt entweder Information über ein angewähltes Objekt oder über das
- oberste Fenster, falls kein Objekt angewählt wurde.
-
- - Hilfe...
-
- Zeigt entweder eine Hilfe-Meldung über ein angewähltes Objekt oder
- über das oberste Fenster, falls kein Objekt angewählt wurde.
-
- - Drucken
-
- Druckt die angewählten Objekte aus. Diese können Text oder Grafik
- beinhalten. Für die Grafikausdrucke muß allerdings das GDOS
- installiert sein.
-
- - An Ausgabe
-
- Wenn das Programm als Applikation gestartet wurde, kann damit das
- GEM-OUTPUT aufgerufen werden. Es werden die Dateinamen übergeben, die
- aktuell angewählt sind. OUTPUT.APP muß sich allerdings im selben
- Inhaltsverzeichnis befinden wie CLIPBRD.PRG.
-
- - Ende
-
- Beendet das Programm bzw. schließt alle Fenster des Accessories.
-
-
- Bearbeiten:
-
- - Undo
-
- Hier nicht implementiert.
-
- Die Menüpunkte "Ausschneiden", "Kopieren" und "Einfügen" können nur
- dann auf die Objekte des Klemmbrettfensters angewendet werden, wenn
- der Schalter "Auf GEM-Klemmbrett" eingeschaltet ist. Sie haben dann
- folgende Bedeutung:
-
- - Ausschneiden
-
- Das ausgewählte Original wird gelöscht, aber eine Kopie davon auf das
- Klemmbrett abgelegt. Dies entspricht einem Umbenennen. Heißt das
- Original "TEST.TXT", so wird also zunächst ein eventuell vorhandenes
- "SCRAP.TXT" gelöscht, dann "TEST.TXT" in "SCRAP.TXT" umbenannt. Dies
- bedeutet, daß danach immer eine Datei mit demselben Suffix wie das
- Original existiert, jedoch hat es den Präfix SCRAP.
-
- - Kopieren
-
- Wie Ausschneiden, wobei das Original erhalten bleibt. Es existieren
- also dann zwei identische Dateien, z.B. "TEST.TXT" und "SCRAP.TXT".
-
- - Einfügen
-
- Um den Inhalts des Klemmbretts um mehrere Ebenen zu erweitern hat der
- Menüpunkt "Einfügen" folgende Wirkung: Alle Dateien mit Präfix
- "SCRAP." werden auf dem Klemmbrett-Inhaltsverzeichnis noch einmal
- angelegt, und zwar als Kopien. Dabei wird an das Präfix noch eine
- eindeutige dreistellige Zahl angehängt. Beispiel:
-
- Exsistiert auf dem Klemmbrett die Datei SCRAP.TXT, und wird "Einfügen"
- aufgerufen, so wird SCRAP.TXT in SCRAP001.TXT kopiert. Wird noch
- einmal "Einfügen" aufgerufen, so existiert danach zusätzlich die Datei
- SCRAP002.TXT. Der Sinn hinter diesem Menüpunkt liegt darin zu suchen,
- aus einem Anwenderprogramm mehrere Teile auszuschneiden und diese in
- einem anderen Programm einzufügen. Man geht dann folgendermaßen vor
- (der Schalter "Auf GEM-Klemmbrett" der Applikation sei jeweils
- eingeschaltet, das Accessory CLIPBRD.ACC installiert und dessen
- Fenster jeweils geöffnet):
-
- a) Einen Teil aus dem Dokument des Anwenderprogramms auswählen
- b) Ausschneiden oder Kopieren aus dem Bearbeiten-Menü der Applikation
- wählen
- c) Einfügen aus dem Bearbeiten-Menü von CLIPBRD.ACC wählen
- d) Schritte a) bis c) für andere Teile des Dokumentes wiederholen
- e) Applikation beenden und andere Applikation starten
- f) Cursor an die Stelle setzen, wo eingefügt werden soll
- g) Einfügen aus dem Bearbeiten-Menü der Applikation wählen ("Auf GEM-
- Klemmbrett" muß eingeschaltet sein)
- h) Ein Dokument aus dem Klemmbrett-Fenster anwählen (z.B.
- SCRAP002.TXT)
- i) Ausschneiden oder Kopieren aus dem Bearbeiten-Menü von CLIPBRD.ACC
- wählen, je nachdem, ob die Kopie erhalten bleiben soll oder nicht
- j) Scritte f) bis i) wiederholen, bis alle Dokumentteile eingefügt
- sind
-
- - Löschen
-
- Der Menüpunkt ist aktiv, wenn mindestens ein Objekt im
- Klemmbrettfenster angewählt ist.
-
- - Alles auswählen
-
- Der Menüpunkt ist immer aktiv, wenn mindestens ein Objekt im
- Klemmbrettfenster existiert. Damit werden alle sichtbaren Objekte auf
- einmal ausgewählt.
-
- - Auf GEM-Klemmbrett
-
- Der Schalter sollte immer aktiv sein, da die oben angeführten
- Operationen nur auf das Klemmbrett wirken. Ist der Schalter
- ausgeschaltet, so kann nur der Menüpunkt "Löschen" angewählt werden
- sofern ein Objekt selektiert ist.
-
-
- Anzeigen:
-
- - Als Text
- - Als Icons
-
- Schaltet zwischen den beiden möglichen Darstellungen um. Selektierte
- Objekte bleiben selektiert.
-
- - SCRAP.* etc.
-
- Zeigt nur die Dateien an, die der Spezifikation genügen.
-
-
- Optionen:
-
- - Einstellungen...
-
- Öffnet eine Dialogbox, in der bestimmte Einstellungen getroffen
- werden können. Dazu gehört die Blinkrate für Menüs im Fenster und
- Pop-Up-Menüs, die Angabe, ob bei Fehlermeldungen ein akustisches
- Warnsignal ausgegeben werden soll und die Angabe, ob ein sich
- ausdehnendes oder zusammmenziehendes Rechteck bei Öffnungs- und
- Schließvorgängen gezeichnet werden soll. Ferner können die
- Warnmeldungen vor dem Löschen oder Überschreiben einer Datei
- abgeschaltet werden.
-
- - Einstellungen sichern
-
- Die Einstellungen werden in der Datei CLIPBRD.INF auf dem Laufwerk,
- auf dem sich CLIPBRD.ACC befindet, gespeichert. CLIPBRD.INF ist eine
- normale ASCII-Datei, die mit jedem Editor editiert werden kann. Zu den
- abgespeicherten Werten gehören:
-
- Zeile 1: Der Pfadname für das GEM-Klemmbrett
- Zeile 2: Die Schalter "Auf GEM-Klemmbrett", "Als Icons/Text", die
- Auswahl der Dateimaske, die Blinkrate, das akustische Warnsignal, die
- Grow-Shrink-Box, die Warnmeldung und die Position des
- Klemmbrett-Fensters.
-
- Die Datei könnte also folgendermaßen aussehen:
-
- C:\CLIPBRD\
- 1 1 1 3 1 1 1 32 128 560 96
-
- Ist die Datei beim Starten des Accessories bzw. der Applikation
- vorhanden, so wird diese eingelesen und entsprechend ausgewertet. Der
- letzte '\' beim Pfad kann auch entfallen.
-
- Ist die Datei CLIPBRD.INF nicht vorhanden, so werden Standardwerte
- benutzt. Der Klemmbrett-Pfad wird genau dann gesetzt, wenn er nicht
- schon vorher gesetzt war. Beim Setzen wird versucht, ein schnelles
- Laufwerk (ab Laufwerk C) zu suchen. Ist keines vorhanden, so wird
- Laufwerk A benutzt. Als Standardpfad wird immer \CLIPBRD gewählt.
-
- - Fonts laden
-
- Um Metadateien mit Proportionalschrift richtig ausgeben zu können
- müssen vorher die Fonts geladen werden. Das kann aber nur geschehen,
- wenn das GDOS geladen ist.
-
- - Fonts freigeben
-
- Die vorher geladenen Fonts werden wieder freigegeben.
-
- Ist eine Metadatei geöffnet, so kann in das Fenster geklickt werden.
- Es öffnet sich ein Pop-Up-Menü, welches genauso zu bedienen ist wie
- eine Drop-Down-Menü der Menüzeile im Fenster. Das Menü bietet die
- drei Wahlmöglichkeiten "Info...", "Original" und "Einpassen".
-
- - Info
-
- Zeigt ausführliche Informationen über die Metadatei an.
-
- - Original
-
- Die Metadatei wird in Originalgröße im Fenster dargestellt. Nicht
- sichtbare Teile können durch Scrolling eingesehen werden.
-
- - Einpassen
-
- Die Metadatei wird immer in der Größe des Fensters angezeigt. Es ist
- nicht möglich zu scrollen.
-
-
- 4. Kommunikation mit CLIPBRD
-
- Für die Kommunikation mit dem installierten Accessory gilt folgendes:
-
- Eine Applikation sollte über das Bearbeiten-Menü wie oben beschrieben
- verfügen. Nach Einschalten von "Auf GEM-Klemmbrett" kann dann über
- "Ausschneiden" oder "Kopieren" ein Teil eines Dokumentes oder einer
- Grafik auf das GEM-Klemmbrett geschrieben werden. Dazu muß die
- Applikation ein "scrp_read" aufrufen, um den Namen des
- Inhaltsverzeichnisses festzustellen. An dieses hängt es den Namen der
- Datei an, also z.B. SCRAP.GEM. Die Datei wird dann auf das Klemmbrett
- geschrieben, so daß sich z.B. der Name
-
- C:\CLIPBRD\SCRAP.GEM
-
- ergibt. Es bleibt der Applikation vorbehalten, mehrere Dateien auf das
- Klemmbrett schreiben, z.B. SCRAP.TXT und SCRP.1WP. Die eine Datei hat
- dann ein Standardformat wie oben beschrieben, die andere ein
- applikationsspezifisches Format.
-
- Um nun Dateien vom Klemmbrett wieder einzulesen kann jede Applikation
- den Menüpunkt "Einfügen" zur Verfügung stellen, wobei vorher der
- Schalter "Auf GEM-Klemmbrett" eingeschaltet ist. Durch ein
- "scrp_read" wird der Pfad des Klemmbretts festgestellt und dann die
- entsprechende Datei geladen, d.h. bei Text-Applikationen z.B.
- SCRAP.TXT, bei Zeichen- und Malprogrammen z.B. SCRAP.GEM oder
- SCRP.IMG, bei Datenbanken oder Tabellenkalkulationen SCRAP.DIF.
-
- Da nach dem Kopieren auf das GEM-Klemmbrett die Applikation verlassen
- und eine andere Applikation aufgerufen werden kann, können Daten
- ausgetauscht werden, wenn das GEM-Klemmbrett nicht gelöscht wird und
- beide Applikationen den gleichen Algorithmus verwenden. Dies ist Sinn
- und Zweck des Klemmbretts, so daß an dieser Stelle der Aufruf an alle
- Software-Entwickler geht, das Klemmbrett dadurch zu unterstützen, daß
-
- - die entsprechenden Menüpunkte zugänglich gemacht werden und
- entsprechend funktionieren
- - der Pfad des Klemmbretts verwendet wird, wenn er voreingestellt ist
- - der Pfad des Klemmbretts nach dem gleichen Algorithmus eingestellt
- wird wie durch das Programm CLIPBRD.ACC, falls dieses nicht
- installiert ist (s.o.) bzw. noch kein anderes Programm den Pfad
- gesetzt hat
-
- Ist CLIPBRD.ACC installiert, so kann die Applikation sich dies zunutze
- machen, indem es Nachrichten an CLIPBRD.ACC schickt. Dazu werden über
- die GEM Message Pipe vordefinierte Nachrichten verschickt. Die
- Nachrichten haben folgende Nummern (C-Schreibweise):
-
- #define SCRP_OK 1000
- #define SCRP_NOTOK 1001
- #define SCRP_UPDT 1002
- #define SCRP_OPEN 1003
-
- Jede Nachricht an das Accessory bewirkt auf jeden Fall eine positive
- oder negative Antwort. Durch die Nachricht SCRP_UPDT kann das
- Accessory veranlaßt werden, das Klemmbrett-Fenster neu anzuzeigen.
- Dies bietet sich an, wenn über die Applikation der Inhalt des
- Klemmbretts geändert wurde, also eine "Ausschneiden"- oder
- "Kopieren"-Operation stattgefunden hat. Die Applikation sendet dann
- die Nachricht SCRP_UPDT an ein eventuell vorhandenes CLIPBRD.ACC.
-
- Beispiel (In ANSI-C Schreibweise unter Einbeziehung von PORTAB.H):
-
- GLOBAL VOID scrp_updt (VOID)
-
- {
- WORD scrp_id;
- WORD msg [8];
-
- msg [0] = SCRP_UPDT;
- msg [1] = gl_apid;
- msg [2] = 0;
-
- scrp_id = appl_find ("CLIPBRD ");
-
- if (scrp_id != -1)
- appl_write (title, sizeof (msg), msg);
- } /* scrp_updt */
-
- Zunächst wird der Nachrichtenpuffer gefüllt. Danach wird die
- Applikationsnummer von CLIPBRD.ACC gesucht. Ist sie gefunden, so wird
- an diese die Nachricht gesendet. Man beachte, daß nur die ersten drei
- Worte der Nachricht eine Bedeutung haben. Nach einem "appl_write"
- können in der Multi-Event-Schleife die Nachrichten SCRP_OK oder
- SCRP_NOTOK auftauchen. Erstere wird an die Applikation geschickt,
- wenn alles in Ordnung war, die negative Rückmeldung, wenn das
- Klemmbrett-Fenster nicht geöffnet war.
-
- Die Nachricht SCRP_OPEN bewirkt, daß Dateien auf dem Klemmbrett oder
- beliebige Dateien angezeigt werden können. Dies kann verwendet werden,
- wenn die Applikation dem Benutzer anzeigen möchte, was bei einem
- "Einfügen"-Vorgang eingefügt werden würde.
-
- Beispiel (In ANSI-C Schreibweise unter Einbeziehung von PORTAB.H):
-
- GLOBAL VOID scrp_open (BYTE *filename)
-
- {
- WORD scrp_id;
- WORD msg [8];
-
- msg [0] = SCRP_OPEN;
- msg [1] = gl_apid;
- msg [2] = 0;
- msg [3] = strlen (filename);
- msg [4] = (WORD)((LONG)filename & 0xFFFF);
- msg [5] = (WORD)((LONG)filename >> 16);
-
- scrp_id = appl_find ("CLIPBRD ");
-
- if (scrp_id != -1)
- appl_write (title, sizeof (msg), msg);
- } /* scrp_open */
-
- Zunächst wird der Nachrichtenpuffer gefüllt. Neben der Nachricht muß
- auch die Länge der Dateinamen und die Dateinamen selbst übergeben
- werden. Diese werden jeweils durch ein Leerzeichen getrennt. Die
- Adresse der Dateinamen wird in niederwertiges und höherwertiges Wort
- aufgeteilt. Danach wird die Applikationsnummer von CLIPBRD.ACC gesucht.
- Ist sie gefunden, so wird an diese die Nachricht gesendet. Man
- beachte, daß nur die ersten sechs Worte der Nachricht eine Bedeutung
- haben. Nach einem "appl_write" können in der Multi-Event-Schleife die
- Nachrichten SCRP_OK oder SCRP_NOTOK auftauchen. Erstere wird an die
- Applikation geschickt, wenn alles in Ordnung war, die negative
- Rückmeldung, wenn eine der Dateien nicht geöffnet werden konnte.
-
- Ist der Dateiname leer, so wird das Klemmbrettfenster selbst geöffnet.
-
- Wir hoffen, daß sich unter den Software-Entwicklern die Einsicht
- durchsetzt, daß der Austausch von Daten zwischen verschiedenen
- Applikationen und damit die Integration der Applikationen dem Benutzer
- eher nützlich ist, als das Festhalten an einem Datenformat, welches
- inkompatibel mit allen anderen ist.
-
- Das Accessory CLIPBRD.ACC mag in diesem Sinne als Hilfsmittel dienen,
- dessen Sinn und Nutzen umso größer ist, je mehr Applikationen das GEM-
- Klemmbrett unterstützen.
-
-
- Dieter & Jürgen Geiß, Februar 1990
-
-